$(document).ready(function(){

	punicao = 0;
	
	objetoSelecionado = null;
	
	//datepickers
	datePicker("dataRegistro");
//	$( "#dataPosseResponsavelI" ).datepicker( "option", "dateFormat", "dd/m/yy");
	
	//carrega os combo box
	loadToComboBoxUrl("#punicaoTipo","punicoestiposes","punicao");

	//combobox dependentes
	$("#punicaoTipo").change(function(event){ 
		objFromCombo = findDataId($("#punicaoTipo").val() , $("#punicaoTipo").get(0).dataSource);		
		$("#valorPunicao").attr("value", objFromCombo.valor); 
	});

	//elogios
	var id = "punicoesDataGrid";
	var punicoesAoColumns = [
                            	{"sTitle": "Data", "mDataProp": "dataRegistro", "sWidth": "20px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Tipo", "mDataProp": "punicaoTipo.punicao", "sWidth": "150px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Descrição", "mDataProp": "descricao", "sWidth": "200px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Valor", "mDataProp": "punicaoTipo.valor", "sWidth": "30px", "bVisible": true, "sDefaultContent":""},
                            	{"sTitle": "Opções", "mDataProp": "htmlControl","bSortable": false, "bVisible": true, "sWidth": "100px","sDefaultContent":"", 
                 				   "fnRender": function ( oObj ) {
                 						
                 					   var botao = "";	                     					   
//                 					   if(oObj.aData.despachar){
                 						   botao = "<button type=\"button\" class=\"editarBtn"+id+"\" onclick=\"populaPunicao(event,'"+id+"', '"+oObj.aData.id+"')\">Editar Punição</button>";
//                 					   }
                 					   botao+= "<button type=\"button\" class=\"alertarBtn"+id+"\" onclick=\"loadCompPunicao(event, '"+oObj.aData.id+"', 'circunstancias', 'Circunstâncias da Punição')\">Circunstâncias</button>";
                 					   botao+= "<button type=\"button\" class=\"informarBtn"+id+"\" onclick=\"loadCompPunicao(event, '"+oObj.aData.id+"', 'justificativas', 'Justificativas da Punição')\">Justificativas</button>";
                 					   botao+= "<button type=\"button\" class=\"noticiarBtn"+id+"\" onclick=\"loadCompPunicao(event, '"+oObj.aData.id+"', 'transgressoes', 'Transgressões da Punição')\">Transgressões</button>";
                 					   botao+= "<button type=\"button\" class=\"printBtn"+id+"\" onclick=\"imprimir(event, '"+oObj.aData.id+"')\">Imprimir Punição</button>";
                 					   return  botao;
	                 				}
	                 			}
							];
	//oneToMany(id, JSON.stringify(elogiosAoColumns));
 	oneToMany(id, JSON.stringify(punicoesAoColumns, function(key, val) {if (typeof val === 'function') { return val + '';} return val;}));
	
	$("#btnGravar").button({ icons: { primary: "ui-icon ui-icon-circle-check"},text: true});
	$("#btnExcluir").button({ icons: { primary: "ui-icon ui-icon-circle-close"},text: true});
	$("#btnNovo").button({ icons: { primary: "ui-icon ui-icon-plus"},text: true});
	
	$("#id").attr("value", "0");
	$("#version").attr("value", "0");
	$("#dataRegistro").attr("value", "");	
	$("#valorPunicao").attr("value", "");
	$("#referencia").attr("value", "");			
	$("#descricao").attr("value", "");
	$("#diasSuspensao").attr("value", "0");
	reload();
    
});

function loadCompPunicao(event, id, pagina, title){
	punicao = id;	
	loadPage(pagina, pagina, title, true);
}

function limpaPunicoes(){
	$("#id").attr("value", '0');
	$("#dataRegistro").attr("value", '');	
	loadToComboBoxUrl("#punicaoTipo","punicoestiposes","punicao");
	$("#valorPunicao").attr("value", '');
	$("#referencia").attr("value", '');			
	$("#descricao").attr("value", '');
	$("#version").attr("value", '');	
}

function populaPunicao(event, idDataGrid, id){
//	var clickedTr = $(event.target).parent("td").parent("tr").get(0);
	var aTrs = $('#'+idDataGrid).dataTable().fnSettings().aoData;
	objetoSelecionado = null;
	for(var i=0; i < aTrs.length; i++){
		objetoSelecionado = aTrs[i]._aData;
		if(objetoSelecionado.id==id){
			objetoSelecionado = aTrs[i]._aData;
			$("#id").attr("value", objetoSelecionado.id);
			$("#dataRegistro").attr("value", objetoSelecionado.dataRegistro);	
			loadToComboBoxCallBack("#punicaoTipo","punicoestiposes/combo/punicao?class=br.com.educa.modelo.disciplinar.PunicoesTipos","punicao",function(){$("#punicaoTipo").val(objetoSelecionado.punicaoTipo.id);});
			$("#valorPunicao").attr("value", objetoSelecionado.punicaoTipo.valor);
			$("#referencia").attr("value", objetoSelecionado.referencia);			
			$("#descricao").attr("value", objetoSelecionado.descricao);
			$("#version").attr("value", objetoSelecionado.version);
			i = aTrs.length;
		}
	}
}

function gravaPunicao(){
	
	registro = $("#"+$("#cadastro_punicao").attr("id")).formParams(false);
	$("#punicaoTipo").each(function(){
		try{ 
			eval("registro."+$(this).attr("id")+" = findDataId(registro."+$(this).attr("id")+".id, $(\"#"+$(this).attr("id")+"\").get(0).dataSource);");
		}catch(e){}
	});
	registro.aluno = aluno;
	registro.dataRegistro = $("#dataRegistro").val();

	if(registro.id == "0"){
		delete registro.id;
		salvarReturn("cadastro_punicao", "punicoeses", registro, reload);
	}else{
		atualizarReturn("cadastro_punicao", "punicoeses", registro, reload);
	}
	//reload();
}

function excluir(){	
	//deletarDoBancoReturn("punicoeses", event, id, reload);
	deletarReturn('punicoeses',$("#id").val(),reload);
}

function reload(){
	$("#id").val("0");
	$("#version").val("0");
	$("#dataRegistro").val("");	
	loadToComboBoxUrl("#punicaoTipo","punicoestiposes","punicao");
	$("#valorPunicao").val("");
	$("#referencia").val("");			
	$("#descricao").val("");
	
	loadDisciplinar("punicoesDataGrid", "punicoeses?find=ByAluno&aluno="+aluno.id);
	$.ajax({
		"type": "GET",
		"contentType": "application/json",
		"url": "alunoses?find=ByPessoaAluno&pessoaAluno="+pessoa.id,
		"beforeSend": function(xhr,settings){
						
			$("#"+$("form").attr("id")).validationEngine('hide');
			$("#disciplinar").block({message: "<img border='0' src='"+"img/ajax-loader.gif"+"'/> &nbsp;Carregando dados do aluno...",
								 css: { 'border': '0px',
										'background': 'transparent',
										'color': 'white'
								      } 
							});
		},
		"error": trataErro,
		"complete": function(){
			$("#disciplinar").unblock();
		},
		"success": function(data, textStatus, xhr){
			//aluno = data[0].aluno;
			$("#comportamento").attr("value", data[0].aluno.comportamento);
			$("#situacao").attr("value", data[0].situacao);
			$("#turma").attr("value", data[0].turma.turma + " - " + data[0].ano);
		}
	 });
}
